<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=ISO-8859-1"
 http-equiv="content-type">
  <title>chimera_overview</title>
</head>
<body>
<big><big><span style="font-weight: bold;"><br>
Chimera: A Library
for Structured Peer-to-peer </span></big><span
 style="font-weight: bold;"><big>Application Development</big><br>
</span></big>
<hr style="width: 100%; height: 2px;"><big><span
 style="font-weight: bold;"></span></big><big><span
 style="font-weight: bold;"></span></big>
<div style="text-align: center;"></div>
<h4><big><span style="font-weight: bold;"></span></big></h4>
<h4><big><span style="font-weight: bold;"></span></big></h4>
<big><span style="font-weight: bold;"></span></big><big><span
 style="font-weight: bold;">Overview </span></big>
<h1><big><span style="font-weight: bold;"></span></big></h1>
<big><small>Chimera is a C library that </small></big><big><small>implements
a structured, peer-to-peer system. This work is an attempt</small></big><big><small>
to provide a library that</small></big> <big><small>allows easy
development of applications on top of a peer-to-peer routing </small></big><big><small>infrastructure.
The goals </small></big><big><small>are twofold. First, we wanted to
make a fast, lightweight, C implantation </small></big><big><small>of
a Tapestry-like system </small></big><big><small>includes some of the
optimizations provided by other systems. Second, </small></big><big><small>we
wanted to develop a </small></big><big><small>system designed to
export an API in line with existing work that describes </small></big><big><small>how
to effectively </small></big><big><small>interface with such an
overlay
network.</small></big><br>
<div style="text-align: justify;"><br>
<big><small>The library implements a routing infrastructure much like
those </small></big><big><small>provided by <a
 href="http://www.cs.ucsb.edu/%7Eravenben/tapestry">Tapestry</a> and <a
 href="http://www.research.microsoft.com/%7Eantr/pastry">Pastry</a>. </small></big><big><small>The
system contains both a leaf set of neighbor nodes, which </small></big><big><small>provides
fault tolerance and a </small></big><big><small>probabilistic
invariant of constant routing progress. It also provides </small></big><big><small>a
PRR style routing table to </small></big><big><small>improve routing
time to a logarithmic factor of network size. Using </small></big><big><small>this
library, developers can </small></big><big><small>build an application
that creates an overlay network with a limited </small></big><big><small>number
of library calls. They</small></big><big><small> can implement their
own application by providing a series of up-calls </small></big><big><small>that
are called by the library </small></big><big><small>in response to
certain overlay network events.</small></big><br>
<br>
<big><small>The library we developed will serve as both a usable
interface and a starting point for further </small></big><big><small>research.
This library implements a relatively complete version of a structured
peer-to-peer system </small></big><big><small>we described. It
includes some of the current work in locality optimization and
soft-state operations. </small></big><big><small>It also provides an
interface that can be used as is to develop applications, but that will
allow for </small></big><big><small>the infrastructure to be changed
with little impact on existing application code.<br>
<br>
<br>
</small></big>&nbsp; <br>
&nbsp; Rama Alebouyeh<br>
<img alt="rama" src="contact.jpeg" style="width: 175px; height: 25px;"><br>
&nbsp; Last updated&nbsp; 02/16/06<br>
</div>
</body>
</html>
